package com.cleaningcloud.cld.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.cleaningcloud.common.core.web.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.cleaningcloud.common.core.annotation.Excel;

/**
 * 账户流水明细对象 cld_bank_details
 * 
 * @author cleaningcloud
 * @date 2025-04-21
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class CldAccountDetails extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 账户流水明细ID */
    private Long accountDetailsId;

    /** 银行卡ID */
    @Excel(name = "账户信息ID")
    private Long accountInfoId;

    /** 收支类型(1收入2支出) */
    @Excel(name = "收支类型(1收入2支出)")
    private Long operaType;

    /** 收支时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "收支时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date paymentTime;

    /** 计划支付时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划支付时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date planTime;

    /** 实际金额 */
    @Excel(name = "实际金额")
    private BigDecimal realAmount;

    /** 应付金额 */
    @Excel(name = "应付金额")
    private BigDecimal answerAmount;

    /** 支付人 */
    @Excel(name = "支付人")
    private String paymentName;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 科目ID */
    @Excel(name = "科目ID")
    private String subjectId;

    /** 创建人ID */
    @Excel(name = "创建人ID")
    private Long createId;

    /** 创建人名称 */
    @Excel(name = "创建人名称")
    private String createName;

    /** 备注是否关闭 */
    @Excel(name = "备注是否关闭")
    private Long flag;

    //  项目名称
    private String projectName;
    //  账户名称
    private String accountName;
    //  科目名称
    private String subjectName;
    //  公司名称
    private String companyName;
    //  开户行
    private String openName;
    //  银行卡号
    private String bankCardNo;
    //  收入科目
    private String subjectId1;
    //  支出科目
    private String subjectId2;
    //  科目编号
    private String subjectNo;
}
